36 research outputs found
microPhantom: Playing microRTS under uncertainty and chaos
This competition paper presents microPhantom, a bot playing microRTS and
participating in the 2020 microRTS AI competition. microPhantom is based on our
previous bot POAdaptive which won the partially observable track of the 2018
and 2019 microRTS AI competitions. In this paper, we focus on decision-making
under uncertainty, by tackling the Unit Production Problem with a method based
on a combination of Constraint Programming and decision theory. We show that
using our method to decide which units to train improves significantly the win
rate against the second-best microRTS bot from the partially observable track.
We also show that our method is resilient in chaotic environments, with a very
small loss of efficiency only. To allow replicability and to facilitate further
research, the source code of microPhantom is available, as well as the
Constraint Programming toolkit it uses
Sur la complexité algorithmique des problèmes de satisfaction de contraintes disjonctifs
National audienceLes problèmes de satisfaction de contraintes (CSP) constituent une puissante manière de capturer de nombreux problèmes combinatoires. Le CSP général est connu pour être NP-complet, mais la complexité du problème paramétré CSP(S) dépend uniquement de son paramètre, habituellement un ensemble de relations sur lesquelles les contraintes sont construites. Suivant ce paramètre, il existe des instances de CSP “faciles” et “difficiles”. Dans cet article, nous montrons un théorème dichotomique pour tous domaines finis de CSP où la disjonction entre contraintes est autorisée. Cette dichotomie est basée sur un critère simple, nous permettant de classer les CSP disjonctifs comme étant dans P ou étant NP-complet. Nous prouvons également que le méta-problème, à savoir vérifier le critère de dichotomie pour les problèmes de satisfaction de contraintes disjonctifs, est fixed-parameter tractable. De plus, nous présentons un algorithme en temps polynomial répondant à cette question pour les CSP disjonctifs sur un domaine ternaire
Constrained optimization under uncertainty for decision-making problems: Application to Real-Time Strategy games
Decision-making problems can be modeled as combinatorial optimization
problems with Constraint Programming formalisms such as Constrained
Optimization Problems. However, few Constraint Programming formalisms can deal
with both optimization and uncertainty at the same time, and none of them are
convenient to model problems we tackle in this paper.
Here, we propose a way to deal with combinatorial optimization problems under
uncertainty within the classical Constrained Optimization Problems formalism by
injecting the Rank Dependent Utility from decision theory. We also propose a
proof of concept of our method to show it is implementable and can solve
concrete decision-making problems using a regular constraint solver, and
propose a bot that won the partially observable track of the 2018 {\mu}RTS AI
competition.
Our result shows it is possible to handle uncertainty with regular Constraint
Programming solvers, without having to define a new formalism neither to
develop dedicated solvers. This brings new perspective to tackle uncertainty in
Constraint Programming.Comment: Published at the 2019 IEEE Congress on Evolutionary Computation
(CEC'19
Learning Interpretable Error Functions for Combinatorial Optimization Problem Modeling
In Constraint Programming, constraints are usually represented as predicates
allowing or forbidding combinations of values. However, some algorithms exploit
a finer representation: error functions. Their usage comes with a price though:
it makes problem modeling significantly harder. Here, we propose a method to
automatically learn an error function corresponding to a constraint, given a
function deciding if assignments are valid or not. This is, to the best of our
knowledge, the first attempt to automatically learn error functions for hard
constraints. Our method uses a variant of neural networks we named
Interpretable Compositional Networks, allowing us to get interpretable results,
unlike regular artificial neural networks. Experiments on 5 different
constraints show that our system can learn functions that scale to high
dimensions, and can learn fairly good functions over incomplete spaces
Problèmes d'optimisation dans les jeux avec GHOST
National audienceCet article présente GHOST, un solveur d'optimisation combinatoire qu'un développeur de jeux de stratégie en temps réel (RTS) peut utiliser comme une boîte noire pour résoudre tout problème modélisé comme un problème de satisfaction/optimisation de contraintes. Nous montrons une manière de modéliser trois diffé-rents problèmes de RTS dans ce formalisme, chacun de ces problèmes appartenant à un niveau d'abstraction spécifique, en utilisant le jeu RTS StarCraft comme environnement de test. Sur chacun de ces trois problèmes, GHOST retourne des solutions de très bonne qualité en l'espace de quelques dizaines de millisecondes
Prediction of Parallel Speed-ups for Las Vegas Algorithms
International audienceWe propose a probabilistic model for the parallel execution of Las Vegas algorithms, i.e. randomized algorithms whose runtime might vary from one execution to another, even with the same input. This model aims at predicting the parallel performances (i.e. speedups) by analysis the runtime distribution of the sequential runs of the algorithm. Then, we study in practice the case of a particular Las Vegas algorithm for combinatorial optimization on three classical problems, and compare the model with an actual parallel implementation up to 256 cores. We show that the prediction can be accurate, matching the actual speedups very well up to 100 parallel cores and then with a deviation of about 20% up to 256 cores
Robustness and Flexibility of GHOST
Dans les actes de AAAI Eleventh Conference on Artificial Intelligence and Interactive Digital EntertainmentInternational audienceGHOST is a framework to help game developers to model and implement their own optimization problems, or to simply instantiate a problem already encoded in GHOST. Previous works show that GHOST leads to high-quality solutions in some tens of milliseconds for three RTS-related problems: build order, wall-in placement and target selection. In this paper, we present two new problems in GHOST: pathfinding and resource allocation. The goal of this paper is to show the robustness of the framework, having very good results for a problem it is not designed for (pathfinding), and to show its flexibility, where it is easy to propose different models of the same problem (resource allocation problem)
Large-scale parallelism for constraint-based local search: the costas array case study
International audienceWe present the parallel implementation of a constraint-based Local Search algorithm and investigate its performance on several hardware plat-forms with several hundreds or thousands of cores. We chose as the basis for these experiments the Adaptive Search method, an efficient sequential Local Search method for Constraint Satisfaction Problems (CSP). After preliminary experiments on some CSPLib benchmarks, we detail the modeling and solving of a hard combinatorial problem related to radar and sonar applications: the Costas Array Problem. Performance evaluation on some classical CSP bench-marks shows that speedups are very good for a few tens of cores, and good up to a few hundreds of cores. However for a hard combinatorial search problem such as the Costas Array Problem, performance evaluation of the sequential version shows results outperforming previous Local Search implementations, while the parallel version shows nearly linear speedups up to 8,192 cores. The proposed parallel scheme is simple and based on independent multi-walks with no communication between processes during search. We also investigated a cooperative multi-walk scheme where processes share simple information, but this scheme does not seem to improve performance
Walling in Strategy Games via Constraint Optimization
International audienceThis paper presents a constraint optimization approach to walling in real-time strategy (RTS) games. Walling is a specific type of spatial reasoning, typically em-ployed by human expert players and not currently fully exploited in RTS game AI, consisting on finding con-figurations of buildings to completely or partially block paths. Our approach is based on local search, and is specifically designed for the real-time nature of RTS games. We present experiments in the context of the RTS game StarCraft showing promising results